// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov  Date: 2007-9-15 18:54:31

// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   ut.java

package com.zelix;

import java.io.*;
import java.util.*;

// Referenced classes of package com.zelix:
//            pt, tb, dc, ks, 
//            is, kt, cv, jb, 
//            qy, nh

class ut extends pt
{

    int o;
    ks p[];
    private static String z[];

    ut(kt kt1, int i, String s1, jb jb, qy qy)
        throws IOException, dc
    {
        int j;
        int l;
        l = kt.i;
        super(kt1, i, s1, jb, qy);
        o = jb.readUnsignedShort();
        p = new ks[o];
        j = 0;
        if(l == 0) goto _L2; else goto _L1
_L1:
        int k = jb.readUnsignedShort();
        is is1 = a(k);
        if(!(is1 instanceof ks))
            throw new dc(j() + z[1] + z[0]);
        p[j] = (ks)is1;
        j++;
_L2:
        if(j >= o)
            return;
        if(true) goto _L1; else goto _L3
_L3:
    }

    public Enumeration s()
    {
        String as[];
        int i;
        int j;
        j = kt.i;
        as = new String[p.length];
        i = 0;
        if(j == 0) goto _L2; else goto _L1
_L1:
        as[i] = p[i].b();
        i++;
_L2:
        if(i >= p.length)
            return new cv(as);
        if(true) goto _L1; else goto _L3
_L3:
    }

    void b(HashSet hashset)
    {
        int i;
        int j;
        j = kt.i;
        i = 0;
        if(j == 0) goto _L2; else goto _L1
_L1:
        hashset.add(p[i]);
        i++;
_L2:
        if(i >= p.length)
            return;
        if(true) goto _L1; else goto _L3
_L3:
    }

    public void a(Hashtable hashtable)
    {
        hashtable.put(super.k, this);
    }

    protected void a(DataOutputStream dataoutputstream, Hashtable hashtable, nh nh)
        throws IOException, tb
    {
        int i;
        int j;
        j = kt.i;
        super.a(dataoutputstream, hashtable, nh);
        dataoutputstream.writeShort(o);
        i = 0;
        if(j == 0) goto _L2; else goto _L1
_L1:
        dataoutputstream.writeShort(p[i].j());
        i++;
_L2:
        if(i >= o)
            return;
        if(true) goto _L1; else goto _L3
_L3:
    }

    private static String z(char[] chs) {
        for (int i = 0; i < chs.length; i++) {
            byte key = 0;
            switch (i % 5) {
                case 0:
                    key = 0x70;
                    break;
                case 1:
                    key = 61;
                    break;
                case 2:
                    key = 100;
                    break;
                case 3:
                    key = 43;
                    break;
                default:
                    key = 84;
                    break;
            }
            chs[i] ^= key;
        }
        return new String(chs).intern();
    }

    static 
    {
        String as[];
        as = new String[2];
        as[0] = z("9S\022J8\031YDh8\021N\027\013=\036Y\001St\031SDn,\023X\024_=\037SDj \004O\rI!\004X".toCharArray());
        as[1] = z("P\007D".toCharArray());
        z = as;

    }
}